<html>
<head><meta charset="utf-8"><title>ICE triage · t-compiler · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/index.html">t-compiler</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html">ICE triage</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="167183453"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167183453" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167183453">(Jun 03 2019 at 12:26)</a>:</h4>
<p>I'm going to do a bit of ICE triage right now. I think getting control over our database of ICE's is going to be more important than any other bit of triage I can do right now.</p>



<a name="167183736"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167183736" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167183736">(Jun 03 2019 at 12:29)</a>:</h4>
<p>so lets see, here are the <a href="https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AI-ICE+-label%3AP-high+-label%3AP-medium+-label%3AP-low+sort%3Acreated-asc" target="_blank" title="https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AI-ICE+-label%3AP-high+-label%3AP-medium+-label%3AP-low+sort%3Acreated-asc">unprioritized I-ICE issues, oldest first</a>.</p>



<a name="167183938"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167183938" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167183938">(Jun 03 2019 at 12:31)</a>:</h4>
<p>first: "Array as asm output ICEs LLVM" <a href="https://github.com/rust-lang/rust/issues/13368" target="_blank" title="https://github.com/rust-lang/rust/issues/13368">#13368</a></p>



<a name="167184078"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167184078" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167184078">(Jun 03 2019 at 12:32)</a>:</h4>
<p>requires <code>#[feature(asm)]</code>. <code>asm</code> is not currently on the 2019 roadmap; see tracking issue <a href="https://github.com/rust-lang/rust/issues/29722" target="_blank" title="https://github.com/rust-lang/rust/issues/29722">#29722</a> <a href="https://github.com/rust-lang/rust/issues/29722" target="_blank" title="https://github.com/rust-lang/rust/issues/29722">here</a></p>



<a name="167184223"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167184223" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167184223">(Jun 03 2019 at 12:34)</a>:</h4>
<p>I'm going to CC <a href="https://github.com/rust-lang/rust/issues/29722" target="_blank" title="https://github.com/rust-lang/rust/issues/29722">#29722</a> and mark the ICE's with <code>asm</code> as P-medium, with the intention that they be upgraded in priority if we upgrade the priority on <code>asm</code> in general. (And I'll follow a similar protocol for any other ICE that seems to be intertwined with an unstable feature that is not on the 2019 roadmap.)</p>



<a name="167184832"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167184832" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167184832">(Jun 03 2019 at 12:40)</a>:</h4>
<p>next: "compiler segfault with deref of *() in asm arg" <a href="https://github.com/rust-lang/rust/issues/13520" target="_blank" title="https://github.com/rust-lang/rust/issues/13520">#13520</a></p>



<a name="167184844"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167184844" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167184844">(Jun 03 2019 at 12:40)</a>:</h4>
<p>I'm handling this same as <a href="https://github.com/rust-lang/rust/issues/13368" target="_blank" title="https://github.com/rust-lang/rust/issues/13368">#13368</a> above</p>



<a name="167185126"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185126" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185126">(Jun 03 2019 at 12:43)</a>:</h4>
<p>next: "compiler abort in LLVM code when using a newtype-wrapper as an argument" <a href="https://github.com/rust-lang/rust/issues/15402" target="_blank" title="https://github.com/rust-lang/rust/issues/15402">#15402</a></p>



<a name="167185148"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185148" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185148">(Jun 03 2019 at 12:43)</a>:</h4>
<p>for some reason this is also connected to <code>feature(asm)</code>.</p>



<a name="167185209"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185209" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185209">(Jun 03 2019 at 12:44)</a>:</h4>
<p>I handled it same as <a href="https://github.com/rust-lang/rust/issues/13368" target="_blank" title="https://github.com/rust-lang/rust/issues/13368">#13368</a> above</p>



<a name="167185273"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185273" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185273">(Jun 03 2019 at 12:45)</a>:</h4>
<p>next: "ICE: Intrinsics cannot be used as bare functions" <a href="https://github.com/rust-lang/rust/issues/15694" target="_blank" title="https://github.com/rust-lang/rust/issues/15694">#15694</a></p>



<a name="167185419"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185419" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185419">(Jun 03 2019 at 12:46)</a>:</h4>
<p>I looked at that recently, we can probably create another shim generator for intrinsics</p>



<a name="167185427"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185427" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185427">(Jun 03 2019 at 12:46)</a>:</h4>
<p>but we could also just make it a proper error, no?</p>



<a name="167185440"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185440" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185440">(Jun 03 2019 at 12:47)</a>:</h4>
<p>(as <a href="https://github.com/rust-lang/rust/issues/15694#issuecomment-115578372" target="_blank" title="https://github.com/rust-lang/rust/issues/15694#issuecomment-115578372">aatch suggested back in 2015</a>)</p>



<a name="167185448"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185448" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185448">(Jun 03 2019 at 12:47)</a>:</h4>
<p>oh, that would probably be for the best, as the shims have various problems</p>



<a name="167185584"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185584" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185584">(Jun 03 2019 at 12:48)</a>:</h4>
<p>oh wait, this depends on <code>feature(intrinsics)</code> anyway</p>



<a name="167185604"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167185604" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167185604">(Jun 03 2019 at 12:49)</a>:</h4>
<p>/me looks for a tracking issue in preparation for marking as P-medium</p>



<a name="167186994"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167186994" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167186994">(Jun 03 2019 at 13:06)</a>:</h4>
<p>I couldn't find a tracking issue, but I left a triage note and marked <a href="https://github.com/rust-lang/rust/issues/15694" target="_blank" title="https://github.com/rust-lang/rust/issues/15694">#15694</a> as P-medium, <a href="https://github.com/rust-lang/rust/issues/15694#issuecomment-498245106" target="_blank" title="https://github.com/rust-lang/rust/issues/15694#issuecomment-498245106">here</a></p>



<a name="167187050"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167187050" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167187050">(Jun 03 2019 at 13:07)</a>:</h4>
<p>next: "ICE when simplest rust-call method is called" <a href="https://github.com/rust-lang/rust/issues/22565" target="_blank" title="https://github.com/rust-lang/rust/issues/22565">#22565</a></p>



<a name="167187059"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167187059" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167187059">(Jun 03 2019 at 13:07)</a>:</h4>
<p>this depends on the "rust-call" ABI</p>



<a name="167187628"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167187628" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167187628">(Jun 03 2019 at 13:15)</a>:</h4>
<p>(which is not stable; guarded under <code>feature(unboxed_closures)</code>, tracking issue <a href="https://github.com/rust-lang/rust/issues/29625" target="_blank" title="https://github.com/rust-lang/rust/issues/29625">#29625</a>)</p>



<a name="167187731"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167187731" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167187731">(Jun 03 2019 at 13:16)</a>:</h4>
<p><em>however</em>, <a href="https://github.com/rust-lang/rust/issues/34901" target="_blank" title="https://github.com/rust-lang/rust/issues/34901">#34901</a> demonstrates a case where a "rust-call" call site does not require the feature gate...</p>



<a name="167187786"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167187786" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167187786">(Jun 03 2019 at 13:17)</a>:</h4>
<p>(namely, when the use site is in a different crate from the definition site.)</p>



<a name="167187919"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167187919" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167187919">(Jun 03 2019 at 13:18)</a>:</h4>
<p>I'm going to triage <a href="https://github.com/rust-lang/rust/issues/34901" target="_blank" title="https://github.com/rust-lang/rust/issues/34901">#34901</a> as P-high because it strikes me as a stability hole</p>



<a name="167189898"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167189898" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167189898">(Jun 03 2019 at 13:36)</a>:</h4>
<p>and I'm going to triage <a href="https://github.com/rust-lang/rust/issues/22565" target="_blank" title="https://github.com/rust-lang/rust/issues/22565">#22565</a> as P-medium, under assumption that it depends on (someone in dependency chain) using <code>feature(unboxed_closures)</code></p>



<a name="167193766"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167193766" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167193766">(Jun 03 2019 at 14:15)</a>:</h4>
<p>next: "ICE: capacity overflow or "Illegal instruction (core dumped)" with very large static item" <a href="https://github.com/rust-lang/rust/issues/23600" target="_blank" title="https://github.com/rust-lang/rust/issues/23600">#23600</a></p>



<a name="167193916"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167193916" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167193916">(Jun 03 2019 at 14:16)</a>:</h4>
<p>the bug discussion has a couple different examples, focused on two dimensions: length in {0xffff_ffff_ffff_ffff, 0xffff_ffff}, and zero-sized-vs-nonzero-sized.</p>



<a name="167194176"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167194176" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167194176">(Jun 03 2019 at 14:19)</a>:</h4>
<p>nonzero-sized with length 0xffff_ffff causes the compiler to use a bunch of RAM and time before it ends with an LLVM OOM.</p>



<a name="167194301"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167194301" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167194301">(Jun 03 2019 at 14:20)</a>:</h4>
<p>nonzero-sized with length 0xffff_ffff_ffff_ffff causes the compiler to error with a "too big for the current architecture" error.</p>



<a name="167194705"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167194705" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167194705">(Jun 03 2019 at 14:23)</a>:</h4>
<p>not sure what we can improve there other than have special cased code for repeat-expressions in the const evaluator</p>



<a name="167194808"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167194808" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167194808">(Jun 03 2019 at 14:24)</a>:</h4>
<p>okay?</p>



<a name="167194816"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167194816" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167194816">(Jun 03 2019 at 14:24)</a>:</h4>
<p>I mean, that doesn't sound so bad to me.</p>



<a name="167194829"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167194829" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167194829">(Jun 03 2019 at 14:24)</a>:</h4>
<p>sure, its dumb code</p>



<a name="167194847"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167194847" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167194847">(Jun 03 2019 at 14:24)</a>:</h4>
<p>but these are also pretty dumb outcomes.</p>



<a name="167195179"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195179" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195179">(Jun 03 2019 at 14:27)</a>:</h4>
<p>while we can do it and it would just be somewhat annoying in const eval, the problem I see is that <code>let mut x = [0; 0xFFFF_FFFF_FFFF_FFFF]; x[900]=42;</code> would end up either getting weird logic to handle efficiently, or just allocate the entire thing on the <code>42</code> write</p>



<a name="167195415"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195415" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195415">(Jun 03 2019 at 14:29)</a>:</h4>
<p>I was assuming we could error based on the absurd length of the initial array</p>



<a name="167195443"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195443" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195443">(Jun 03 2019 at 14:29)</a>:</h4>
<p>you want to represent it as a allocate-on-write value?</p>



<a name="167195473"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195473" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195473">(Jun 03 2019 at 14:30)</a>:</h4>
<p>(which then means we do not observe an error until the write occurs?)</p>



<a name="167195547"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195547" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195547">(Jun 03 2019 at 14:30)</a>:</h4>
<p>or are you hoping to eventually have some support where arrays at const-eval time are represented sparsely?</p>



<a name="167195656"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195656" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195656">(Jun 03 2019 at 14:31)</a>:</h4>
<p>(while a sparse array representation sounds tempting, I suspect it would just end up being super complex given that we'd want to allocate the dense representation once we see a borrow or similar...)</p>



<a name="167195741"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195741" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195741">(Jun 03 2019 at 14:31)</a>:</h4>
<p>oh, borrows are no problem in miri, even if we picked a sparse representation</p>



<a name="167195806"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195806" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195806">(Jun 03 2019 at 14:32)</a>:</h4>
<p>but yea, the backing code for allocations would be crazy</p>



<a name="167195822"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195822" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195822">(Jun 03 2019 at 14:32)</a>:</h4>
<p>hmm okay yeah, not borrows.</p>



<a name="167195834"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195834" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195834">(Jun 03 2019 at 14:32)</a>:</h4>
<p>maybe eventual casts of borrows to unsafe pointers would be tricky</p>



<a name="167195852"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195852" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195852">(Jun 03 2019 at 14:32)</a>:</h4>
<p>XD not even that</p>



<a name="167195863"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195863" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195863">(Jun 03 2019 at 14:32)</a>:</h4>
<p>but I assume that you and Ralf could do something clever for those too</p>



<a name="167195865"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195865" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195865">(Jun 03 2019 at 14:32)</a>:</h4>
<p>ANyway</p>



<a name="167195871"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195871" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195871">(Jun 03 2019 at 14:32)</a>:</h4>
<p>miri has like 3 levels of abstraction</p>



<a name="167195896"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195896" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195896">(Jun 03 2019 at 14:33)</a>:</h4>
<p>What is the problem with erroring at the point where the array is initially created?</p>



<a name="167195899"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195899" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195899">(Jun 03 2019 at 14:33)</a>:</h4>
<p>ok, so... report an error if the allocations are too large?</p>



<a name="167195913"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195913" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195913">(Jun 03 2019 at 14:33)</a>:</h4>
<p>absolutely none, we just need to pick a limit</p>



<a name="167195927"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195927" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195927">(Jun 03 2019 at 14:33)</a>:</h4>
<p>is the issue that you do not want miri to be consulting the runtime architecture limit?</p>



<a name="167195943"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167195943" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167195943">(Jun 03 2019 at 14:33)</a>:</h4>
<p>I assume it already does something similar to deal with sizeof</p>



<a name="167196026"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196026" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196026">(Jun 03 2019 at 14:34)</a>:</h4>
<p>that's one problem, but also we can't figure out the maximum RAM size at all anyway</p>



<a name="167196055"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196055" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196055">(Jun 03 2019 at 14:34)</a>:</h4>
<p>maybe we can just pick a nice value and make it configurable similar to the recursion limit?</p>



<a name="167196068"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196068" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196068">(Jun 03 2019 at 14:34)</a>:</h4>
<p>okay so you're worried about the gulf between maximum RAM size and the maximum architecture size?</p>



<a name="167196092"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196092" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196092">(Jun 03 2019 at 14:34)</a>:</h4>
<p>as in, choosing a limit that is "obviously" too large</p>



<a name="167196101"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196101" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196101">(Jun 03 2019 at 14:34)</a>:</h4>
<p>yea</p>



<a name="167196132"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196132" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196132">(Jun 03 2019 at 14:35)</a>:</h4>
<p>ppl will complain about 100GB arrays being denied, I guarantee it :D</p>



<a name="167196142"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196142" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196142">(Jun 03 2019 at 14:35)</a>:</h4>
<p>I think something analogous to recursion limit makes a lot of sense here.</p>



<a name="167196167"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196167" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196167">(Jun 03 2019 at 14:35)</a>:</h4>
<p>since usually 100GB arrays are a user error</p>



<a name="167196192"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196192" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196192">(Jun 03 2019 at 14:35)</a>:</h4>
<p>we used to have a memory limit for miri, but removed it, should be easy enough to re-add just for const eval</p>



<a name="167196228"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196228" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196228">(Jun 03 2019 at 14:36)</a>:</h4>
<p>in any case</p>



<a name="167196268"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196268" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196268">(Jun 03 2019 at 14:36)</a>:</h4>
<p>this isn't P-high, obviously</p>



<a name="167196646"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196646" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196646">(Jun 03 2019 at 14:39)</a>:</h4>
<p>Based on what I've observed on my Linux box, I'm going to triage this as P-low. I added a summary of the outcomes I observed to a grid at the top of the issue.</p>



<a name="167196963"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167196963" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167196963">(Jun 03 2019 at 14:42)</a>:</h4>
<blockquote>
<p>I think getting control over our database of ICE's is going to be more important than any other bit of triage I can do right now.</p>
</blockquote>
<p>FYI Crater results for 1.36 are pretty bad (700 regressions), so you might want to take a look at that soonish<br>
<a href="https://github.com/rust-lang/rust/issues/61401#issuecomment-498089693" target="_blank" title="https://github.com/rust-lang/rust/issues/61401#issuecomment-498089693">https://github.com/rust-lang/rust/issues/61401#issuecomment-498089693</a></p>



<a name="167197012"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167197012" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167197012">(Jun 03 2019 at 14:43)</a>:</h4>
<p>thanks <span class="user-mention" data-user-id="121055">@Pietro Albini</span> ; I did notice that there were a bunch of regression issues logged when I skimmed the results.</p>



<a name="167197024"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167197024" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167197024">(Jun 03 2019 at 14:43)</a>:</h4>
<p>I'll try to get to that soon-ish too.</p>



<a name="167197038"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167197038" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167197038">(Jun 03 2019 at 14:43)</a>:</h4>
<p>(most likely, first thing tomorrow)</p>



<a name="167197043"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167197043" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167197043">(Jun 03 2019 at 14:43)</a>:</h4>
<p>thanks!</p>



<a name="167197061"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ICE%20triage/near/167197061" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ICE.20triage.html#167197061">(Jun 03 2019 at 14:43)</a>:</h4>
<p>this was only the check-only+rustdoc btw, results for the full run still have to come in</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>